package com.wjw.java.others.static_;

/**
 * 静态变量：类变量
 * 1.static变量是该类的所有对象共享的
 * 2.static变量是在类加载的时候,就生成了,类加载只会加载一次
 * ------------------------------------------------------
 * 定语语法：
 * 访问修饰符 static 数据类型 变量名,如：
 * public static int num = 0;
 * ------------------------------------------------------
 * 如何访问：
 * 类名.变量名,如:
 * ChildrenPaly.count ++;
 * ------------------------------------------------------
 * 静态变量(类变量) 和 成员变量(属性) 的区别：
 * 静态变量是该类的所有对象所共享的,成员变量是每个对象独享的
 * ------------------------------------------------------
 */
public class StaticVariable {
    public static void main(String[] args) {
        ChildrenPaly c1 = new ChildrenPaly("张三");
        ChildrenPaly c2 = new ChildrenPaly("李四");
        c1.play();
        ChildrenPaly.count ++;
        c2.play();
        ChildrenPaly.count++;
        System.out.println(ChildrenPaly.count);//2
    }
}
class ChildrenPaly{
    public static int count = 0;//类变量,静态变量
    private String name;//成员变量
    public void play(){
        System.out.println("小孩："+this.name+"加入了游戏");
        //count ++;
    }
    //getter、setter...
    public String getName() {
        return this.name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public ChildrenPaly() {
    }
    public ChildrenPaly(String name) {
        this.name = name;
    }
}